package com.token.sysorg.bean;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Vector;
import com.token.sql.IntegrateSql;
import com.token.sql.AbstractTableBean;
/**
 * 组织架构-人员
 * @author 代码创建
 */
public class FSysPersonnel extends AbstractTableBean {

	private int SysId; //租户ID
	private String SysAddTime; //创建时间
	private String SysAddUser; //创建人
	private String SysEditTime; //修改时间
	private String SysEditUser; //修改人
	private String PersonNumber; //人员工号
	private String PersonName; //人员名称
	private int Status; //员工状态
	private int Sex; //性 别
	private String NameEn; //英文名
	private String Nation; //民族
	private String BirthDate; //出生日期
	private String CardID; //身份证
	private String JoinDate; //加入公司日期
	private String Phone; //手机
	private String Email; //邮箱地址
	private String Tel; //办公电话
	private String PostID; //所属岗位编号
	private String ComID; //所属公司编号
	private String DeptID; //所属部门编号

	public static String TABLE_NAME = "F_Sys_Personnel";
	public static String TABLEKEY_NAME = "PersonID";
	public FSysPersonnel (IntegrateSql f){
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
	}

	public FSysPersonnel (IntegrateSql f,ResultSet rs) throws SQLException{
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
		this.initParamToRs(rs);
	}

	public FSysPersonnel (IntegrateSql f,String keyValue) throws SQLException{
		super(f,TABLE_NAME);
		this.setKeyName(TABLEKEY_NAME);
		setCodePrepare(selectCodeById().toString());
		prepareSql.setPstValue(1, keyValue);
		ResultSet rs = executeQuery();
		if(rs.next()){
			initParamToRs(rs);
		}else{
			initParam();
		}
		rs.close();
	}

	@Override
	protected void initParam() {
		SysId = 0; //租户ID
		SysAddTime = ""; //创建时间
		SysAddUser = ""; //创建人
		SysEditTime = ""; //修改时间
		SysEditUser = ""; //修改人
		PersonNumber = ""; //人员工号
		PersonName = ""; //人员名称
		Status = 0; //员工状态
		Sex = 0; //性 别
		NameEn = ""; //英文名
		Nation = ""; //民族
		BirthDate = ""; //出生日期
		CardID = ""; //身份证
		JoinDate = ""; //加入公司日期
		Phone = ""; //手机
		Email = ""; //邮箱地址
		Tel = ""; //办公电话
		PostID = ""; //所属岗位编号
		ComID = ""; //所属公司编号
		DeptID = ""; //所属部门编号
	}


	public void initParamToRs(ResultSet rs) throws SQLException{
		SysId = rs.getInt("SysId"); //租户ID
		SysAddTime = rs.getString("SysAddTime"); //创建时间
		SysAddUser = rs.getString("SysAddUser"); //创建人
		SysEditTime = rs.getString("SysEditTime"); //修改时间
		SysEditUser = rs.getString("SysEditUser"); //修改人
		PersonNumber = rs.getString("PersonNumber"); //人员工号
		PersonName = rs.getString("PersonName"); //人员名称
		Status = rs.getInt("Status"); //员工状态
		Sex = rs.getInt("Sex"); //性 别
		NameEn = rs.getString("NameEn"); //英文名
		Nation = rs.getString("Nation"); //民族
		BirthDate = rs.getString("BirthDate"); //出生日期
		CardID = rs.getString("CardID"); //身份证
		JoinDate = rs.getString("JoinDate"); //加入公司日期
		Phone = rs.getString("Phone"); //手机
		Email = rs.getString("Email"); //邮箱地址
		Tel = rs.getString("Tel"); //办公电话
		PostID = rs.getString("PostID"); //所属岗位编号
		ComID = rs.getString("ComID"); //所属公司编号
		DeptID = rs.getString("DeptID"); //所属部门编号
		this.setKeyId(rs.getString("PersonID"));
	}


	@Override
	protected int appendData() throws SQLException {
		int i = 1;
		prepareSql.setPstValue(i++,SysId); //租户ID
		prepareSql.setPstValue(i++,SysAddTime); //创建时间
		prepareSql.setPstValue(i++,SysAddUser); //创建人
		prepareSql.setPstValue(i++,SysEditTime); //修改时间
		prepareSql.setPstValue(i++,SysEditUser); //修改人
		prepareSql.setPstValue(i++,PersonNumber); //人员工号
		prepareSql.setPstValue(i++,PersonName); //人员名称
		prepareSql.setPstValue(i++,Status); //员工状态
		prepareSql.setPstValue(i++,Sex); //性 别
		prepareSql.setPstValue(i++,NameEn); //英文名
		prepareSql.setPstValue(i++,Nation); //民族
		prepareSql.setPstValue(i++,BirthDate); //出生日期
		prepareSql.setPstValue(i++,CardID); //身份证
		prepareSql.setPstValue(i++,JoinDate); //加入公司日期
		prepareSql.setPstValue(i++,Phone); //手机
		prepareSql.setPstValue(i++,Email); //邮箱地址
		prepareSql.setPstValue(i++,Tel); //办公电话
		prepareSql.setPstValue(i++,PostID); //所属岗位编号
		prepareSql.setPstValue(i++,ComID); //所属公司编号
		prepareSql.setPstValue(i++,DeptID); //所属部门编号
		return i;
	}


	@Override
	public Vector<String> getFields() {
		Vector<String> vec = new Vector<String>();
		vec.addElement("SysId"); //租户ID
		vec.addElement("SysAddTime"); //创建时间
		vec.addElement("SysAddUser"); //创建人
		vec.addElement("SysEditTime"); //修改时间
		vec.addElement("SysEditUser"); //修改人
		vec.addElement("PersonNumber"); //人员工号
		vec.addElement("PersonName"); //人员名称
		vec.addElement("Status"); //员工状态
		vec.addElement("Sex"); //性 别
		vec.addElement("NameEn"); //英文名
		vec.addElement("Nation"); //民族
		vec.addElement("BirthDate"); //出生日期
		vec.addElement("CardID"); //身份证
		vec.addElement("JoinDate"); //加入公司日期
		vec.addElement("Phone"); //手机
		vec.addElement("Email"); //邮箱地址
		vec.addElement("Tel"); //办公电话
		vec.addElement("PostID"); //所属岗位编号
		vec.addElement("ComID"); //所属公司编号
		vec.addElement("DeptID"); //所属部门编号
		return vec;
	}


	/**
	 * 设置租户ID
	 * @param sysid
	 */
	public void setSysId(int sysid){
		SysId = sysid;
	}
	/**
	 * 获取SysId
	 * @return 租户ID
	 */
	public int getSysId(){
		return SysId;
	}

	/**
	 * 设置创建时间
	 * @param sysaddtime
	 */
	public void setSysAddTime(String sysaddtime){
		SysAddTime = sysaddtime;
	}
	/**
	 * 获取SysAddTime
	 * @return 创建时间
	 */
	public String getSysAddTime(){
		return SysAddTime;
	}

	/**
	 * 设置创建人
	 * @param sysadduser
	 */
	public void setSysAddUser(String sysadduser){
		SysAddUser = sysadduser;
	}
	/**
	 * 获取SysAddUser
	 * @return 创建人
	 */
	public String getSysAddUser(){
		return SysAddUser;
	}

	/**
	 * 设置修改时间
	 * @param sysedittime
	 */
	public void setSysEditTime(String sysedittime){
		SysEditTime = sysedittime;
	}
	/**
	 * 获取SysEditTime
	 * @return 修改时间
	 */
	public String getSysEditTime(){
		return SysEditTime;
	}

	/**
	 * 设置修改人
	 * @param sysedituser
	 */
	public void setSysEditUser(String sysedituser){
		SysEditUser = sysedituser;
	}
	/**
	 * 获取SysEditUser
	 * @return 修改人
	 */
	public String getSysEditUser(){
		return SysEditUser;
	}

	/**
	 * 设置人员工号
	 * @param personnumber
	 */
	public void setPersonNumber(String personnumber){
		PersonNumber = personnumber;
	}
	/**
	 * 获取PersonNumber
	 * @return 人员工号
	 */
	public String getPersonNumber(){
		return PersonNumber;
	}

	/**
	 * 设置人员名称
	 * @param personname
	 */
	public void setPersonName(String personname){
		PersonName = personname;
	}
	/**
	 * 获取PersonName
	 * @return 人员名称
	 */
	public String getPersonName(){
		return PersonName;
	}

	/**
	 * 设置员工状态
	 * @param status
	 */
	public void setStatus(int status){
		Status = status;
	}
	/**
	 * 获取Status
	 * @return 员工状态
	 */
	public int getStatus(){
		return Status;
	}

	/**
	 * 设置性 别
	 * @param sex
	 */
	public void setSex(int sex){
		Sex = sex;
	}
	/**
	 * 获取Sex
	 * @return 性 别
	 */
	public int getSex(){
		return Sex;
	}

	/**
	 * 设置英文名
	 * @param nameen
	 */
	public void setNameEn(String nameen){
		NameEn = nameen;
	}
	/**
	 * 获取NameEn
	 * @return 英文名
	 */
	public String getNameEn(){
		return NameEn;
	}

	/**
	 * 设置民族
	 * @param nation
	 */
	public void setNation(String nation){
		Nation = nation;
	}
	/**
	 * 获取Nation
	 * @return 民族
	 */
	public String getNation(){
		return Nation;
	}

	/**
	 * 设置出生日期
	 * @param birthdate
	 */
	public void setBirthDate(String birthdate){
		BirthDate = birthdate;
	}
	/**
	 * 获取BirthDate
	 * @return 出生日期
	 */
	public String getBirthDate(){
		return BirthDate;
	}

	/**
	 * 设置身份证
	 * @param cardid
	 */
	public void setCardID(String cardid){
		CardID = cardid;
	}
	/**
	 * 获取CardID
	 * @return 身份证
	 */
	public String getCardID(){
		return CardID;
	}

	/**
	 * 设置加入公司日期
	 * @param joindate
	 */
	public void setJoinDate(String joindate){
		JoinDate = joindate;
	}
	/**
	 * 获取JoinDate
	 * @return 加入公司日期
	 */
	public String getJoinDate(){
		return JoinDate;
	}

	/**
	 * 设置手机
	 * @param phone
	 */
	public void setPhone(String phone){
		Phone = phone;
	}
	/**
	 * 获取Phone
	 * @return 手机
	 */
	public String getPhone(){
		return Phone;
	}

	/**
	 * 设置邮箱地址
	 * @param email
	 */
	public void setEmail(String email){
		Email = email;
	}
	/**
	 * 获取Email
	 * @return 邮箱地址
	 */
	public String getEmail(){
		return Email;
	}

	/**
	 * 设置办公电话
	 * @param tel
	 */
	public void setTel(String tel){
		Tel = tel;
	}
	/**
	 * 获取Tel
	 * @return 办公电话
	 */
	public String getTel(){
		return Tel;
	}

	/**
	 * 设置所属岗位编号
	 * @param postid
	 */
	public void setPostID(String postid){
		PostID = postid;
	}
	/**
	 * 获取PostID
	 * @return 所属岗位编号
	 */
	public String getPostID(){
		return PostID;
	}

	/**
	 * 设置所属公司编号
	 * @param comid
	 */
	public void setComID(String comid){
		ComID = comid;
	}
	/**
	 * 获取ComID
	 * @return 所属公司编号
	 */
	public String getComID(){
		return ComID;
	}

	/**
	 * 设置所属部门编号
	 * @param deptid
	 */
	public void setDeptID(String deptid){
		DeptID = deptid;
	}
	/**
	 * 获取DeptID
	 * @return 所属部门编号
	 */
	public String getDeptID(){
		return DeptID;
	}

}
